:root { font-size: 14px; }
@media (min-width: 350px) { :root { font-size: 16px; } }
@media (min-width: 640px) { :root { font-size: 28px; } }
@media (min-width: 1440px) { :root { font-size: 1.25vw; } }

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

section {
	position: relative;
	z-index: 1;
	max-width: 19rem;
}

/* Logo */

.logo {
	opacity: 0;
	position: relative;
	margin-left: -3.5rem;
	margin-top: -8rem;
	margin-bottom: .75rem;
	font-size: 8px;
}

body.ready .logo {
	opacity: 1;
}

body:not(.iOS) #lines * {
  mix-blend-mode: lighten;
}

#fills * {
  opacity: 0;
  mix-blend-mode: lighten;
}

#line-i-1 {
  -webkit-transform-origin: 30em 8em;
          transform-origin: 30em 8em;
}

/* Fireworks */

.fireworks {
  position: absolute;
	top: 0;
	left: 0;
  width: 100%;
  height: 100%;
}
